/************************************************************************************

 *    author : Jacl
 *    e-mail : 2320025806@qq.com
 *    date   : 20210109
 *    desc   : PRV564S config file
 *    version: 0.0

 __  __                   __           __         
/\ \/\ \                 /\ \__       /\ \        
\ \ \ \ \    ___     ____\ \ ,_\   ___\ \ \/'\    
 \ \ \ \ \  / __`\  /',__\\ \ \/  / __`\ \ , <    
  \ \ \_/ \/\ \L\ \/\__, `\\ \ \_/\ \L\ \ \ \\`\  
   \ `\___/\ \____/\/\____/ \ \__\ \____/\ \_\ \_\
    `\/__/  \/___/  \/___/   \/__/\/___/  \/_/\/_/

************************************************************************************/
/***********************************************************************************
                            注意事项
Cacheable Block设置方式：
    当地址和地址掩码（YSYX210152_Cacheable_MASK）做与运算后，所得地址若等于Cacheable_ADDR则当前地址块
    可以被缓存。如当Cacheable_MASK=0xFFFF_FFFF_8000_0000,YSYX210152_Cacheable_ADDR=0x0000_0000_8000_0000时
    地址0x0000_0000_8000_0000~0x0000_0000_8FFF_FFFF是可缓存区段
同理设定SFR 地址块
***********************************************************************************/






`define YSYX210152_XLEN            64                          //RV64 YES!
`define YSYX210152_TLB_switch      1                           //TLB  YES!
`define YSYX210152_ITLB_entry_NUM  16
`define YSYX210152_DTLB_entry_NUM  16
`define YSYX210152_PADR            32
`define YSYX210152_Simulation      0                           //If 1, the files are YSYX210152_Simulation-use
`define YSYX210152_L1_switch       0                           //If 1, Cache is used; if 0 , ITCM is used
`define YSYX210152_Mcop_switch     1                           //If 1, Math coprocessor is used, if 0, no math-coprocessor
`define YSYX210152_PC_reset        64'h0000_0000_0000_0000
`define YSYX210152_Cacheable_MASK  64'hFFFF_FFFF_8000_0000     // If Address & YSYX210152_Cacheable_MASK = YSYX210152_Cacheable_ADDR, then the space can be cache
`define YSYX210152_Cacheable_ADDR  64'h0000_0000_8000_0000
`define YSYX210152_SFR_ADDR_MASK   64'hFFFF_FFFF_FFFF_0000     // If Address & YSYX210152_SFR_ADDR_MASK = YSYX210152_SFR_ADDR_SEG, the address is in SFR segment
`define YSYX210152_SFR_ADDR_SEG    64'h0000_0000_2000_0000